调试任务指的是启动时选择节点类型为debug的任务,与之对应的是执行任务,其他类型卡的任务都是执行任务

两者之间的区别在于,调试任务有Jupyter或ssh可以连接到任务中,其对/code目录进行的修改会被保存;调试任务最多只能运行3小时,超时会被kill(debug资源有限),而执行任务则会完整地执行用户设定的启动命令。

BitaHub提供在线的交互式开发调试服务,根据使用习惯,您可以从两种不同的调试方式中选一个

一、使用Jupyter调试模式

调试模式基于Jupyter集成环境,在WEB界面直接使用。

调试任务步骤如下:

1. 启动任务

如下图所示,在项目详情页点击 调试 按钮,在弹出的窗口中,根据需要GPU卡的个数。

1553161359551

确认完成资源配置后进入等待资源分配状态,此时按钮变为 等待中

2. 打开Jupyter调试工具

如果成功分配到调试任务资源,则任务列表会生成相应的调试任务。等待中 按钮会变为 启动Jupyter,点击即可打开Jupyter调试工具。

1553161359551

3. 在线调试

下图为调试界面,您可以在网页中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示。您还可以使用集成的Terminal工具进行交互操作。

1553161894016

终端默认启动是的sh,如需使用复制粘贴和自动补全功能,需在命令行中输入bash

关于Jupyter的详细操作指导,请参见Jupyter使用文档

二、使用SSH连接调试

除了使用集成的Jupyter调试环境,您还可以使用SSH连接方式。但要注意,SSH和Jupyter只能选择一种

SSH方式的调试步骤如下:

1. 选择新建任务

如下图,在项目详情页选择新建任务:

1553161894016

2. 选择debug类型卡

在运行任务界面,选择GPU类型为debug,然后提交任务:

1553161894016

为什么启动命令是sleep 3h?这里只是为了让这个任务可以停留3个小时,注意命令执行完成时任务即终止。如果你预计仅需要调试1小时,那么写成sleep 1h也可以。

3. 利用SSH进行调试

等待任务分配到资源后,点击该任务行的查看按钮,进入任务详情页

1553161894016

滚动到页面最下端,在SSH信息版块,可以看到该任务的SSH信息,利用该信息即可进行SSH方式调试。

SSH方式的调试,需要确保您的image镜像中安装了openssh-server

4.配置个人SSH key

平台会为每次启动的任务新初始化一个ssh key,有些使用者会觉得不方便,想每次都使用自己固定的私钥进行登录。那么可以在启动命令中进行配置,如使用类似的启动命令(请替换为个人的公钥):

echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDfA6q+2qeTYzabyO+KnMruIuUsYKNfM9kz6w+QVR3Qm6llKgwwtO9c0STXSQqFyyTH28UU/eoLSKyywVN4S4EZ4Pm1uBkf3H3CPLNSt8JT7nCBAEpxW6/lVHmexTfl6iheG+CD1jercMWENSyJLRPeZff+P/2caigHhOEte7+uOWD0uhD/3CXEaKaPAE6NVWP/9KsW7Se64wMAlljwnCwYNbugfrn3AB2JQOPYvHjmmvNh7BdcTgiu5U1R9hu9HRmC4mSEj87BL4vAHGAMd1efRiJ7UyC8rnXQbGrYOLQKE5xM1klifvQ7ifffpW2UjaNwSRd8ZS4HVmST2hjLGRAf xx@ustc" >> ~/.ssh/authorized_keys ; sleep 3h

这样就可以使用个人的私钥登录了(平台提供的私钥也依然可用)。

这步不是必须的。

results matching ""

    No results matching ""